1. Field of the Invention
The present invention relates to an optical disk writing control device for writing data on an optical disk such as a CD (CD-R) on which data can be written, a CD (CD-RW) (data of which can be rewritten) or the like.
2. Description of the Related Art
When various main channel data such as voice, images, letters and so forth is recorded on an optical disk such as a CD-R, CD-RW or the like, it is necessary to record various control data, which is used for data reading and so forth, on the optical disk.
The control data includes 8 items of sub-channel data, P through W. A subcode Q data includes time information for a track in which a set of the main channel data is recorded, a TOC (Table Of Contents) of the main channel data and so forth.
A format of the sub-channel data will now be described with reference to FIGS. 1A, 1B and 1C. As shown in FIG. 1A, each block, as a data unit of the sub-channel data, includes 98 EFM (Eight to Fourteen Modulation) frames. When a speed of writing data on the optical disk is a single speed mode, the speed of writing the frames is 75 frames/second. As shown in FIG. 1B, each EFM frame includes 8-bit subcode information. These bits are referred to as P, Q, R, S, T, U, V and W, respectively. FIG. 1B shows an arrangement obtained from vertically arranging the sub-channel data of one block of the respective EFM frames. FIG. 1C shows an arrangement obtained from horizontally arranging the subcode Q data of the sub-channel data of the respective EFM frames. As shown in FIG. 1C, a data unit of the subcode Q data includes 98 bits. The front two bits of sub-channel data of the EFM frames are bits for synchronization. The remaining 96 bits indicate effective information.
These 96 bits are divided into 12 bytes, and, in a typical model, these bytes are allocated to data, referred to as `CTL, ADR`, `TRACK`, `INDEX`, `RMIN`, `RSEC`, `RFRM`, `ZERO`, `AMIN`, `ASEC`, `AFRM` and `CRC`, respectively.
`CTR` represents the type of the corresponding track (for example, a tune of a music CD) of the main channel data, `ADR` represents the type of the subcode Q data, `TRACK` represents the track number of a corresponding track of the main channel data, `INDEX` represents numbers indicating, respectively, predetermined points in the corresponding track of the main channel data, `RMIN`, `RSEC` and `RFRM` represent relative time information for the corresponding track of the main channel data, `ZERO` represents a fixed value `00H`, `AMIN`, `ASEC` and `AFRM` represent absolute time information for the main channel data, and `CRC` is data of an error detection code.
In the optical disk writing control device for writing data on an optical disk such as a CD-R, a CD-RW or the like (hereinafter, referred to as a `controller IC for the CD-R/RW`) in the related art, when the subcode Q data is written on the optical disk, main data of the subcode Q data set by a CPU is output to a writing side, approximately as it is. Accordingly, the functions of the controller IC for the CD-R/RW are very simple.
First, every time data is written on the optical disk for each block (every 13.3 ms in the case where the data writing speed is the single speed mode, for example), the CPU connected with the controller IC for the CD-R/RW generates the main data of the subcode Q data to be written on the optical disk, and sets the main data of the subcode Q data in registers of the controller IC for the CD-R/RW. Then, the controller IC for the CD-R/RW processes the main data of the subcode Q data in a predetermined manner, and writes the main data of the subcode Q data on the optical disk.
With reference to FIG. 2, writing of the subcode Q data through the controller IC for the CD-R/RW will now be described.
First, when data is written on the optical disk, the CPU generates the main data of the subcode Q data, `CTL, ADR`, `TRACK`, `INDEX`, `RMIN`, `RSEC`, `RFRM`, `ZERO`, `AMIN`, `ASEC`, `AFRM`, and sets the main data of the subcode Q data in the registers (hereinafter, referred to as `Sys Con registers`) of a Sys Con interface of the controller IC for the CD-R/RW.
The controller IC for the CD-R/RW loads the main data of the subcode Q data in a parallel-to-serial converter, calculates `CRC`, adds `CRC` at the end of the main data of the subcode Q data, adds `S0` and `S1` at the forefront of the main data of the subcode Q data, and sends the thus-obtained subcode Q data to the writing side.
At this time, `S0`, `S1` and `CRC` of the subcode Q data are automatically generated. However, for the main data of the subcode Q data, `CTL, ADR`, `TRACK`, `INDEX`, `RMIN`, `RSEC`, `RFRM`, `ZERO`, `AMIN`, `ASEC`, `AFRM`, only the contents set by the CPU are written as they are.
This is because the subcode Q data is written in some format modes specified by ADR in a mixed manner, and also, when the subcode Q data is written, the TOC having a complicated data arrangement may be handled. Therefore, setting of the main data of the subcode Q data is performed by the CPU in the related art.
On the other hand, when data is written in the optical disk, the CPU calculates the time information which monotonically increases for each block (every 13.3 ms in the case where the data writing speed is the single speed mode, for example), and sets the main data of the subcode Q data, `CTL, ADR`, `TRACK`, `INDEX`, `RMIN`, `RSEC`, `RFRM`, `ZERO`, `AMIN, `ASEC`, `AFRM` (total 10 bytes of data) in the Sys Con registers. Accordingly, a heavy load of data processing is borne by the CPU.
For example, the CPU calculates the time information in the binary-coded decimal (BCD) system, and therefore, the CPU bears a considerable load for monotonic increase/decrease calculations.
Further, when data is written on the optical disk in, for example, the single speed mode, it is necessary to write the main data of the subcode Q data, `CTL, ADR`, `TRACK`, `INDEX`, `RMIN`, `RSEC`, `RFRM`, `ZERO`, `AMIN`, `ASEC`, `AFRM`, within the writing time of `13.3 ms`.
Thus, the CPU needs to set the 10 bytes of the main data of the subcode Q data in the Sys Con registers of the controller IC for the CD-R/RW every 13.3 ms.
Further, the CPU needs to set the 10 bytes the main data of the subcode Q data in the Sys Con registers of the controller IC for the CD-R/RW every 6.67 ms when the data writing speed uses the double speed mode, every 3.33 ms when the data writing speed is 4.times., and every 1.67 ms when the data writing speed is 8.times..
When the speed of writing data on the optical disk is increased as mentioned above, the CPU needs to perform, for each block (every 13.3 ms in the case where the data writing speed is the single speed mode, for example), simple calculation of the time information, generate the main data of the subcode Q data, and set the generated data in the Sys Con registers of the controller IC for the CD-R/RW, at high speed. Thus, the data processing load of the CPU increases.
For example, when the speed of writing data on the optical disk is the single speed mode, even a low-speed CPU, can performs the above-described operations including setting of the main data of the subcode Q data in the Sys Con registers without delay. However, when the speed of writing data on the optical disk is 8.times. speed, a low-speed CPU cannot perform calculation of the time information for each block (every 1.67 ms), generation of the main data of the subcode Q data every 1.67 ms, and setting of the 10 bytes of data in the Sys Con registers without delay.
By using a high-speed CPU, high-speed data writing can be performed. However, this increases cost. Further, when a high-speed CPU is used, it is necessary to increase the bus width. Accordingly, in view of layout, miniaturization of the system becomes difficult.